(3 hours per week, 3 credits)
Course Description
Introduction to computer
based problem solving for scientific applications. Design of algorithms
and algorithmic descriptions. 4th generation languages. Software
packages. Structured program development. Modular and
object-oriented programming. Program testing. Prerequisites: OAC Calculus
and Algebra and Geometry.
Courses ITI1120, ITI1220, CSI 1301, CSI 1303, and CSI 1390 cannot be
combined for credits.
Professor: Ivan Stojmenovic Web:
www.site.uottawa.ca/~ivan
Textbook
Assignments: 20%
no class October 12 (Thanksgiving)
Mid Term Exam: 30%
Note: Conversion from decimal to binary number systems and vice versa will be on the midterm, and 4 slides about it are added at the end of module 1 lecture.
Final Exam: 50%Note: a minimum of 50%
of the average of the exams must be obtained to pass the course.
Assignments are posted on
the course Web page. Each assignment
must be done individually by each student.
Copying of assignments, even with superficial changes, is a serious form
of academic fraud and will not be tolerated.
Lab Access
Lab access time is a period during which the lab is reserved for a
specific group to use the computers and be aided by a teaching assistant. The labs are in room STE 2052.
Course Objectives
By the end of this course,
students will have a good working knowledge on solving problems on the computer
by using various techniques and methods within the framework of scientific applications.
Students will learn how to
design efficient algorithms for solving problems.
Course Content
---------------------
Introduction
Basic computation (module 2) code samples listings 1.x, 2.x, 3.x
Flow of control: Branching (module 3)
Flow of control: Loops (module 4) code samples listings 4.x, 5.x
Arrays (module 5)
Defining classes and methods (module 6) code samples listings 7.x, 8.x
More about objects and methods (module 7) code samples listing 6.x
Polymorphism and Inheritance (module 9) listing 8.x (note: this is newly added module, marked as Module 8 in the notes)
Streams and File I/O (module 8) code samples listings 9.x an 10.x